

#ifndef JSON_MSG_CHASSIS_H
#define JSON_MSG_CHASSIS_H

#include <iostream>
#include <thread>
#include <mutex>
#include "rapidjson/rapidjson.h"
#include "rapidjson/document.h"
#include "rapidjson/writer.h"
#include "rapidjson/stringbuffer.h"
#include "rapidjson/prettywriter.h"
#include <ctime>
#include <fstream>

namespace tbox_msg
{

    class jsonMsgRepChassis
    {
    private:
        rapidjson::Document doc;
    public:

        jsonMsgRepChassis(/* args */){};
        ~jsonMsgRepChassis(){};

        bool jsonDocTostring(std::string &jToStr);
        void changeReportJson();
        void initReportJson();
        void displayJson();

    public:
        std::string VIN = "0000000000000";
        std::string RCU = "0000000000000000";
        std::string BCM = "0000000000000000";
        std::string DC = "0000000000000000";
        std::string EHB1 = "0000000000000000";
        std::string EHB2 = "0000000000000000";
        std::string EPB1 = "0000000000000000";
        std::string EPB2 = "0000000000000000";
        std::string EPS1 = "0000000000000000";
        std::string EPS2 = "0000000000000000";
        std::string BMS1 = "0000000000000000";
        std::string BMS2 = "0000000000000000";
        std::string BMS3 = "0000000000000000";
        std::string BMS4 = "0000000000000000";
        std::string MCU1 = "0000000000000000";
        std::string MCU2 = "0000000000000000";
        std::string VEH1 = "0000000000000000";
        std::string VEH2 = "0000000000000000";
        std::string VEH3 = "0000000000000000";
        std::string event = "0000000000000000";
        std::string TBOX_OK = "0000000000000000";
        std::string TBOX_sleep = "0000000000000000";
    };
}

#endif
